Communication at a distance can take many forms, from primitive signal fires to advanced telecommunications. The modern telecommunications era began with the discovery that sounds such as those produced by the human voice could be converted into electrical signals transmissible by wire to far distant locales. This is of limited usefulness, of course, if there are only two telephones connected by a single wire—each phone can only communicate with the other. To allow widespread use of telephone technology, vast switching networks evolved so that virtually any telephone user could be connected with any other, so long as they both had access to the networks. A telecommunications network is not simply a conglomeration of multiple pairs of phones connected to each other. Rather, each phone is connected to a switch, that can complete a connections to many other telephones or other switches similarly capable. The circuit for any one phone call may pass through any number of these switches in order to ultimately connect the parties that wish to communicate with each other. Many such networks exist, but generally speaking they are able to communicate with each other to route calls between subscribers of different networks.
Computers may also be connected to communication networks, although often for data rather than voice communication. Computers were originally large, isolated pieces of equipment that in themselves represented a great advance in technology. Able to perform certain computations very much faster than human calculators, they enabled very complex problems to be solved in less time than had before been possible. At first, computers did not typically communicate with each other, but as both computing and communication technology advanced, the advantages of doing so became apparent. Computers that can communicate with each other can share data and computing resources, and can process the results into human-perceivable form at multiple locations almost simultaneously. Data input need only be done once if computers can share data files. Thus data communications enable not only the machines, but also the humans operating them to work together more efficiently.
Data sent from one computer to another may be used for a variety of applications. One very popular application that has evolved, for example, is email, where users send text messages to each other. Each user in a computer network can be assigned a network address so that email sent by one user can be targeted to one, or to many others who are connected to the network.
Computer networks were originally deployed within a relatively-closed environment such as in an office or university setting. These networks are sometimes referred to as local area networks, or LANs. Network users, of course, could only communicate with others on the same network. Networks were eventually interconnected, however, so that users of one network could communicate with users of another. Eventually, a standard protocol for communication and the necessary physical connections were employed to connect a large number of networks to each other, creating the world-wide communication system referred to as the Internet.
The Internet enables almost any computer to be connected to any another. Not unexpectedly, this connectivity has found many uses. As the capacity of individual computing devices and communication networks increased, users could send not only email and text files, but large data files for producing at the received device graphic and even animated images for display and sound files to produce an audio presentation. The introduction of the World Wide Web (WWW) provided a way for individual users to access data such as these stored on remote servers coupled to the Internet, and to request that certain files be sent to them for presentation. More recently, multimedia presentations involving audio and video presented in real time may also be sent.
In either case, voice or data communication, wireless channels have become a popular alternative to wireline connections. Wireless, and especially radio frequency communication have been in use for some time. But it is only relatively recently that advances in technology have enabled its widespread use. Radio frequency communications tend to interfere with each other unless some steps are taken to create separate channels. The first such advance, of course, was to use different, spaced apart frequencies to create different. A receiver tuned to a particular one of these frequencies in order to distinguish the communications intended for it from others. Radio telephone communication networks became feasible with the introduction of cellular architecture. In this scheme, radio antennas and base stations are deployed at relatively close physical locations across a network coverage area, and each is connected to a switching network similar to that of a conventional wireline system. Individual telephones, however, use radio channels to communicate with a nearby base station in order to connect with the network. Each antenna defines a cell, and its relatively-small size means that the individual communications taking place within it can use low transmission power. These communications therefore tend not to interfere with communications in non-adjacent cells, which can therefore reuse the same radio frequencies for their communications.
The low-power transmission requirements also contributed to the ability to make smaller telephones, making them more convenient and hence more popular. A chief advantage of wireless communication, of course, is mobility. Subscribers to a cellular network may use their phones from almost anywhere in the network coverage area. Calls to network subscribers are handled by the network itself, while gateways to other networks, including traditional telephone networks, can be used to connect to others. As the usage of cell phones increased, other methods of increasing network capacity were developed, including dividing individual frequencies into time slots allocated to individual conversations on a periodic basic in such a manner than many conversations can share the same frequency with little or no user-perceivable interruption.
Computers now also use wireless communication, though the demands of data communication are often somewhat different than those of voice communication. Telephone conversations are “real-time”, meaning that it is important that the information carried on the radio channel arrive very soon after it is transmitted. Large delays or interruptions are intolerable. The human ear, however, is capable of understanding a conversation even if it is not reproduced exactly as it would be heard if the parties were in the same room. Minor variations in quality present little difficulty. Received data communications, on the other hand, must often be reproduced very faithfully in order to be useful. Data, however, can often be broken down into small packets for separate transmission. These packets can be sent in any order and reassembled at the receiver. Error checking algorithms are employed so that re-transmission of improperly received data can be requested. Not all data transmissions, however, enjoy this distinction. Wireless data communication network are now being challenged by real time applications such as streaming multimedia presentation and voice conversations that are converted into and transmitted as data communications.
Some wireless computer networks can be created for local use by a number of devices with radio communication range of each other. In a wireless LAN (WLAN), users can transmit data in various forms to each other using a standard protocol such as that prescribed in a specification designated as IEEE 802.11b. This and similar protocols are simply agree-upon standards for wireless communication. Although the development of such standard protocols is sometimes a painstaking process, their application permits widespread communication by a wide variety of devices made by different manufacturers. FIG. 1 is a functional block diagram illustrating a typical basic service set (BSS) 100. A BSS, one type of WLAN, is often an ad hoc network, that is, one that arises when needed by the particular users involved. The different devices in the WLAN, often referred to as nodes, can and typically do vary from time to time. In the BSS 100 of FIG. 1, mobile nodes MN-1 through MN-4 have established a WLAN for communicating with each other. They generally do not communicate at the same time, but take turns according to rules set out in the particular protocol they are using. They can, for example, send email or other data files to each other. Their communication is limited, however, to other nodes in the BSS 100. The number of nodes that can join the network is limited, and they can typically only communicate with each other within a limited geographic area.
To expand the capacity and coverage area, and different form of WLAN is often employed. An infrastructure BSS (If-BSS), for example, is often used. In an If-BSS, an access point (AP) is provided such that the individual nodes each communicate via the AP, which is often a device dedicated to this purpose. The AP may regulate communications between the individual nodes, and may be a conduit for connecting to a larger network, as illustrated in FIG. 2. FIG. 2 is a functional block diagram illustrating a typical extended service set (ESS) 200. In this illustration, two separate WLANS, here If-BSS 202 and IF-BSS 204 are connected to a central server 210. Mobile nodes MN-1 through MN-4 communicate through AP 203 of If-BSS 202, and mobile nodes MN-5 through MN-8 communicate via AP 205 of IF-BSS 204. Server 210 may, of course, be connected to other wireless (or wired) networks as well. Note that the lines representing the coverage area of each individual LAN are for illustration, coverage areas may overlap, and nodes are not necessarily assigned to the nearest AP.
As should be apparent, the ESS 200 of FIG. 2 permits a greater number of users spread over a larger area to communicate data with each other. In addition, server 210 may be connected to an external network, such as the Internet, to facilitate even more universal communication accessibility. Within ESS 200, users (or more properly, nodes) are assigned an address so that communications between them can be routed throughout the network. Communication between the nodes of an If-BSS can simply be routed through its AP, while communications with nodes associated with other If-BSSs can be routed through the central server 210. Nodes may move from one area to another, of course, and provision is generally made so that they may change from using one AP for communication to using another.
Some cellular telephone networks, such as those referred to as third-generation (3G) networks, are capable of communicating data in addition to standard voice conversation. Server 210 may also permit connection to such networks, permitting data communications between their respective users. Many devices, in fact, are now capable of communicating in both the WLAN and the 3G environment, meaning that for data (and in some cases voice) communication they may utilize whichever network is most desirable. Mobile nodes capable of transferring from one network to another may also do so while data is being transferred.
Unfortunately, an on-going communication session is dropped when a user roams from one WLAN subnet to another, or from one WLAN network to another, or from a WLAN network to a 3G network, or from a WLAN network to another type of wireless data network. This is a major problem for time-sensitive real-time applications like voice over IP, stream video, and critical data application that require a consistent connection. The roaming may even cause the terminal to become unreachable as a result of the address change. Even where the user is presented with an option to transfer from one network to another, they may be unaware of the effect this transfer will have on ongoing data communications.
Needed, therefore, is a manner of allowing nodes that roam from one network to another to more efficiently transfer while minimizing this data loss or corruption. The present invention provides just such a solution.